﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Sinacor.Infra.UI.Common;
using Sinacor.Infra.Common.Validation;

namespace Sinacor.UI.Bovespa.Parametro.Presenter
{
    public interface ICadastroParametro : IBaseView
    {
        //Task : 5435
        //Data : 02/03/2009
        //Autor: Andre
        /// <summary>
        /// Realizar um Update Target no combobox de Agente de Compensação.
        /// </summary>
        void AtualizarAgenteCompensacao();
        //Task : 5435
        //Data : 02/03/2009
        //Autor: Andre
        /// <summary>
        /// Realizar um Update Target no combobox de Mensagem.
        /// </summary>
        void AtualizarMensagem();

        /// <summary>
        /// Realizar um Update Target no combobox de Mensagem Zé c/ Zé.
        /// </summary>
        void AtualizarMensagemZeComZe();

        //Task : 5435
        //Data : 02/03/2009
        //Autor: Andre
        /// <summary>
        /// Realizar um Update Target nos comboboxs de Operador.
        /// </summary>
        void AtualizarOperador();


        void AtualizaStatusBotao();

        //Task : 5435
        //Data : 02/03/2009
        //Autor: Andre
        /// <summary>
        /// Carregar todos os controles seguindo as regras descritas no Negócio.UI
        /// </summary>
        /// <param name="error">Erro do valor</param>
        void CarregarControle();

        //Task : 5435
        //Data : 02/03/2009
        //Autor: Andre
        /// <summary>
        /// Apresentar a mensagem da resource key "Bovespa.Parametro.Message.ConfirmaOperacao" em uma janela do SinacorMessageBox com as opções de "Sim" e "Não"
        /// </summary>
        bool ConfirmarDesfazer();

        //Task : 5435
        //Data : 02/03/2009
        //Autor: Andre
        /// <summary>
        /// Apresentar a mensagem da resource key "Bovespa.Parametro.Message.ConfirmaOperacao" em uma janela do SinacorMessageBox com as opções de "Sim" e "Não".
        /// </summary>
        bool ConfirmarSalvar();

        //Task : 5435
        //Data : 02/03/2009
        //Autor: Andre
        /// <summary>
        /// IApresentar a mensagem da resource key "Bovespa.Parametro.Message.ConfirmaOperacao" em uma janela do SinacorMessageBox.
        /// </summary>
        void InformarSucessoDesfazer();

        //Task : 5435
        //Data : 02/03/2009
        //Autor: Andre
        /// <summary>
        /// Apresentar a mensagem da resource key "Bovespa.Parametro.Message.ConfirmaOperacao" em uma janela do SinacorMessageBox.
        /// </summary>
        void InformarSucessoSalvar();
        
        //Task : 6023
        //Data : 03/03/2009
        //Autor: Leandro Liez
        /// <summary>
        /// Ativar (required) campo de agente de compensacao como obrigatório
        /// </summary>
        void AtivarAgenteCompensacao();

        //Task : 6023
        //Data : 03/03/2009
        //Autor: Leandro Liez
        /// <summary>
        /// Desativar (required) campo de agente de compensacao como obrigatório
        /// </summary>
        void DesativarAgenteCompensacao();

        //Task : 6023
        //Data : 03/03/2009
        //Autor: Leandro Liez
        /// <summary>
        /// Ativar (required) campo de dias de cancelamento de order
        /// </summary>
        void AtivarDiasCancelamentoOrdem();

        //Task : 6023
        //Data : 03/03/2009
        //Autor: Leandro Liez
        /// <summary>
        /// Desativar (required) do campo de dias de cancelamento de order
        /// </summary>
        void DesativarDiasCancelamentoOrdem();

    }
}
